package algo3.modelo.armas;

import algo3.modelo.Posicion;
import algo3.modelo.barcos.Barco;

public class MinaSubmarinaPorContacto extends Mina {
	
	private final int COSTO_MINA_SUBMARINA_POR_CONTACTO = 200;

public MinaSubmarinaPorContacto(Posicion posicion) {
	//La Coloco en estado Activo
	this.turnosParaExplotar = 2;
	this.agregarDanio(posicion, this.getClass());
	this.posicion = posicion;
	this.costo = COSTO_MINA_SUBMARINA_POR_CONTACTO;
	
}
	public void avanzarTurno() {
		//Las minas por contacto no tienen comportamiento al avanzar turnos
		if(this.turnosParaExplotar == 1) { 
			this.turnosParaExplotar = 0;	
		}
	}
	
	//Método que se ejecutaria cuando un barco choca con la mina.
	public void recibeImpactoDe(Barco unBarco) {
		for(Posicion pos: unBarco.posicionesOcupadas()) {		
			if(pos.equals(this.listaDeDanios.get(0).getPosicion())) {
				//Sería más lógico activar la mina pero diseñe todo en base a los turnos
				//para explotar para poder devolver el estado.
				this.turnosParaExplotar = 1;
			}
		}
	}
}
